Customization and Composition of Distributed Objects: Policy Management in Distributed Software Architectures

نویسندگان

  • Mark Christopher Astley
  • MARK CHRISTOPHER ASTLEY
چکیده

Research in software architecture has emphasized compositional development, where the computational aspects of a system are modularly separated from communication and coordination aspects. Typically, software architectures are factored into a set of components, which encapsulate computation, and connectors, which encapsulate interactions. In terms of design, development and debugging, this separation has several important advantages. In particular, by separating application code from the protocols used for interaction, software components may be independently developed and tested. Moreover, as requirements change, existing architectural elements may be modularly replaced by new elements with appropriate properties. A fundamental problem with these abstractions is their interaction with \cross-cutting" architectural features such as heterogeneity, availability, and adaptability. Availability, for example, requires protocols that manipulate both communication and resources. Controlling architectural resources, however, requires access to the internal resource usage patterns of components and connectors. Unfortunately, current architectural abstractions have in exible interfaces which obscure these patterns. This loss of information forces the implementation of such features to be hard-coded within architectural elements, eliminating many advantages of the modular approach. In this thesis, we propose a model for distributed software architectures that exposes resource access in a modular fashion. Our model extends current architectural abstractions by providing a meta-architecture for customization. This meta-architecture augments the functional interface of architectural elements with an operational interface for controlling resources. We also develop a formal semantics which provides a foundation for reasoning about composition in the model. iii As an instantiation of the model, we describe an architecture description language called the Distributed Connection Language. dcl allows the speci cation of distributed architectures which incorporate traditional elements (i.e. components and connectors) together with new elements, called policies, which specify resource constraints. We provide a Java-based implementation of dcl to demonstrate that the increased modularity of the approach does not entail prohibitive performance tradeo s. iv For Rufus the Cat, wherever ye may be... v Acknowledgements As a single balloon must stand for a lifetime of thinking about balloons, so each citizen expressed, in the attitude he chose, a complex of attitudes. One man might consider that the balloon had to do with the notion sullied, as in the sentence, The big balloon sullied the otherwise clear and radiant Manhattan sky. That is, the balloon was, in each man's view, an imposture, something inferior to the sky that had formerly been there, something interposed between the people and their \sky." But in fact it was January, the sky was dark and ugly; it was not a sky you could look up into, lying on your back in the street, with pleasure, unless pleasure, for you, proceeded from having been threatened, from having been misused. And to the underside of the balloon was a pleasure to look up into, we had seen to that, muted grays and browns for the most part, contrasted with walnut and soft, forgotten yellows. And so, while this man was thinking sullied, still there was an admixture of pleasurable cognition in his thinking, struggling with the original perception. { Donald Barthelme, \The Balloon", Unspeakable Practices, Unnatural Acts1 There are many people to thank for transforming an otherwise \sullying" experience into an \admixture of pleasurable cognition". First and foremost, I would like to thank my brother Scott and my parents for their continued support throughout the years. I would also like to thank Suzanne (Chicken Gruel Woman) for her love and support during the many ups and downs of graduate school. My thesis committee Gul Agha, Mehdi Harandi, Geneva Belford, Ralph Johnson, and Carolyn Talcott have provided invaluable advice and comments on the work you see here. I would especially like to thank my advisor, Gul Agha, for providing encouragement throughout the years. Carolyn Talcott also deserves special mention for her help in developing the formal 1I am indebted to Dr. Joseph Dupras (a.k.a. Doctor Doom) in the English Department at the University of Alaska Fairbanks for helping me track down this reference. vi semantics in Chapter 4. Many of the results described here are a natural evolution of her foundational work. Needless to say, any remaining faults are solely my responsibility. I would also like to thank the other members of the Open System Laboratory, both past and present, for their input and contributions. The \old gang", Dan (I'm o co ee now) Sturman, Brian (Professor) Nielsen, Shangping Ren, Nalini Venkatasubramanian, Rajendra Panwar, Wooyoung Kim and Joonkyoo Yoo2, all deserve special mention for providing comments on early versions of this work. The \new gang", Thomas (Boot to the head) Clausen, Prasannaa (Mmmm, meat) Thati, James Waldby, Carlos Varela, Nadeem Jamali, and Reza Ziaei, deserve equal mention for providing comments and suggestions on early thesis drafts. The members of OSL also deserve credit for making the Actor Foundry project the success that it is. Last but not least, I would like to thank Helena Mitasova, Bill Brown, and the other ne folks at the U.S. Army Construction Engineering Research Laboratory for their support throughout my graduate career. 2Sadly, Joon passed away in 1998. vii Table of

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Modular Construction and Composition of Distributed Software Architectures

A complete speciication of a distributed software architecture describes two diierent aspects. First, it decomposes the software into its components and their in-terconnection. Second, it speciies the policies that are required to manage an architecture. Such policies are dependent on the nature of the execution environment. They are complicated by requirements such as heteroge-niety, availabil...

متن کامل

Dycos -a Customizable Kernel Architecture Supporting Distributed Operating Environments 1 Introducing Terms of Customization for Os-kernels

Techniques of customizing and extending operating systems (OSs) have a growing impact on system architectures in the eld of distributed computing and parallel programming. Even if traditional methods of adaption have been limited to the user-level, modern OSs cannot do without kernel support. Hence concepts and structures of microkernel architectures must be redeened to meet the requirements of...

متن کامل

Comparing Service-Oriented and Distributed Object Architectures

Service-Oriented Architectures have been proposed as a replacement for the more established Distributed Object Architectures as a way of developing loosely-coupled distributed systems. While superficially similar, we argue that the two approaches exhibit a number of subtle differences that, taken together, lead to significant differences in terms of their large-scale software engineering proper...

متن کامل

Configuration management for distributed software services

The paper describes the SysMan approach to interactive configuration management of distributed software components (objects). Domains are used to group objects to apply policy and for convenient naming of objects. Configuration Management involves using a domain browser to locate relevant objects within the domain service; creating new objects which form a distributed service; allocating these ...

متن کامل

Aster: a CORBA-based software interconnection system supporting distributed system customization

This paper introduces the Aster distributed composition-based programming system that is aimed at easing the development of distributed runtime systems, customized to the application needs, in a Corba-based environment. Our approach is based on high-level customization: given the speci cation of application requirements using the Aster composition language, a distributed runtime system, customi...

متن کامل

It Takes Two to Tango: Customization and Standardization as Colluding Logics in Healthcare; Comment on “(Re) Making the Procrustean Bed Standardization and Customization as Competing Logics in Healthcare”

The healthcare context is characterized with new developments, technologies, ideas and expectations that are continually reshaping the frontline of care delivery. Mannion and Exworthy identify two key factors driving this complexity, ‘standardization’ and ‘customization,’ and their apparent resulting paradox to be negotiated by healthcare professionals, managers and policy makers. However, whil...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999